home *** CD-ROM | disk | FTP | other *** search
/ TOS Silver 2000 / TOS Silver 2000.iso / programm / MM2_DEV / S / MOS / GEMSCAN.D < prev    next >
Encoding:
Modula Definition  |  1990-09-28  |  1.5 KB  |  48 lines

  1. DEFINITION MODULE GEMScan;
  2.  
  3. (*
  4.  * Dies Modul dient zum Anzeigen einer Aufruferkette.
  5.  * Die Funktion wird z.B. vom Modul 'GEMError' nach einem
  6.  * Laufzeitfehler benutzt.
  7.  *)
  8.  
  9. FROM SYSTEM IMPORT LONGWORD;
  10.  
  11. FROM SysTypes IMPORT ScanDesc;
  12.  
  13. FROM MOSGlobals IMPORT NameStr;
  14.  
  15. CONST   MaxDepth = 19;
  16.  
  17. VAR     CallingChain: ARRAY [0..MaxDepth] OF RECORD
  18.                         relAddr   : LONGCARD;              (* rel. Moduladr. *)
  19.                         modName   : ARRAY [0..19] OF CHAR; (* Modulname *)
  20.                         sourceName: NameStr;               (* Sourcename *)
  21.                         procName  : ARRAY [0..19] OF CHAR; (* Prozedurname *)
  22.                         codeOpts  : LONGWORD;              (* Comp-Options *)
  23.                       END;
  24.  
  25.         ChainDepth: INTEGER;  (* <0 : CallingChain leer *)
  26.  
  27.  
  28. PROCEDURE InitChain ( firstPosition: ScanDesc );
  29.   (*
  30.    * Initialisiert eine Aufruferkette. Der tiefste Aufrufer wird in
  31.    * 'firstPosition' übergeben.
  32.    * Die Funktion initialisiert dann für jeden Aufrufer ein Element
  33.    * des Feldes 'CallingChain'. 'ChainDepth' enthält den höchsten
  34.    * verwendeten Feldindex.
  35.    *)
  36.  
  37. PROCEDURE InputScan ( REF msg: ARRAY OF CHAR; VAR index: CARDINAL );
  38.   (*
  39.    * Zeigt die Informationen aus dem Feld mit dem Index 'index' mit
  40.    * Hilfe der GEM-Alert-Box an.
  41.    * Dann kann der Anwender den Index erhöhen oder erniedrigen oder
  42.    * diese Funktion verlassen.
  43.    * Hinterher enthält 'index' die Feldnummer, die zuletzt angezeigt
  44.    * wurde.
  45.    *)
  46.  
  47. END GEMScan.
  48.